WARNING:
JavaScript is turned OFF. None of the links on this concept map will
work until it is reactivated.
If you need help turning JavaScript On, click here.
此概念图以 IHMC CmapTools 创建, 内含信息有关于: 第9章 類別圖與物件圖, 第9章 類別圖與物件圖 包括 9-1 類別圖與物件圖的基礎-4+1觀點, 9-2-3 操作-建構子操作 是 建構子操作(Constructor Operations)是類別建構子, 可以用來建立物件,在UML類別圖並不會特別區分 建構子和一般操作,我們可以在操作之前使用 <<constructor>>模版標示為建構子。例如:Customer 類別擁有同名的建構子操作,如下圖所示:, 9-3-4 組合關係-差異 是 組合關係和聚合關係的主要差異,如下所 示: 組合關係的零件是只能使用在成品的專屬 零件;聚合關係的零件是可以使用在其他 成品的通用零件。 成品如果不存在,組合關係的零件也不會 存在,換句話說,組合關係的零件並不能 單獨存在。但是,聚合關係的零件因為是 通用零件,所以可以單獨存在。, 9-4-3 驗證類別圖的多重性-類別圖 是 物件圖常常用來作為類別圖的測試案例,幫 助我們驗證類別圖多重性設計是否正確,例 如:一輛車有4個輪子,UML類別圖如下圖 所示:, 9-3 類別關係 包括 9-3-2 結合關係-可導覽的結合關係(範例), 9-4-3 驗證類別圖的多重性-更正的類別圖 是 車輛只有3個輪子,之前的類別圖是將輪子 固定成4個,有問題,所以,應該將多重性 改為1..*,如下圖所示:, 9-2-2 屬性與能見度-屬性語法 是 在類別符號中間部分是屬性(Attributes)清單 ,這是類別的性質、特徵或狀態,每一個屬 性自成一列來表示。類別屬性的基本語法, 如下所示: 能見度 屬性名稱 : 資料型態[ = 初值] 上述語法的開頭是能見度符號+、-、#和~,符 號之後和「:」符號之前是屬性名稱,「:」符 號之後是資料型態,如果屬性有初值,可以在 「=」等號後指定初值。例如:類別的month和 salesForMonth屬性,如下所示: - month : int = 1 - salesForMonth : int, 9-3-9 相依關係- UML 2.x版預先定義的相依關係(說明) 是 UML一些常用預先定義的相依關係種類和說 明,如下表所示:, 9-3 類別關係 包括 9-3-10 實現關係-介面, 9-3 類別關係 包括 9-3-10 實現關係-說明, 9-3 類別關係 包括 9-3-2 類別關係-結合關係, 9-4 物件圖 包括 9-4-3 驗證類別圖的多重性-更正的類別圖, 9-4 物件圖 包括 9-4-1 物件圖的符號-匿名物件, 9-3 類別關係 包括 9-3-9 相依關係- UML 2.x版預先定義的相依關係(說明), 9-3-5 角色名稱與多重性-角色名稱 是 在類別之間如果擁有結合關係、聚合或組 合關係,在類別圖連接線兩端的上方,可 以額外標示角色名稱與多重性。 角色名稱(Role Name)表示類別在類別關 係中扮演的角色。例如:公司(Company )類別是勞工(Worker)的雇主(Employer ),如下圖所示:, 9-4 物件圖 包括 9-4-2 物件關係-類別圖, 9-2-2 屬性與能見度-能見度(種類) 是 在操作和屬性前可以加上存取修飾子,稱為能 見度(Visibility),或稱為可見度和可見性。 能見度是物件導向的封裝機制,可以指定操作 或屬性的存取等級,避免屬性被任意修改,或 操作被任意呼叫。UML的能見度分為四種,如 下圖所示:, 9-4 物件圖 包括 9-4-3 驗證類別圖的多重性-類別圖, 9-4-1 物件圖的符號-匿名物件 是 匿名物件(Anonymous Objects)的物件圖只 有類別名稱,沒有指明物件名稱,通常是因 為物件名稱並不重要,如下圖所示:, 9-3 類別關係 包括 9-3-9 相依關係- UML 2.x版預先定義的相依關係(範例)